package com.lehoon.tomato.model;

import java.math.BigDecimal;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import com.baomidou.mybatisplus.annotation.TableId;
import java.io.Serializable;
import lombok.Data;
import lombok.EqualsAndHashCode;

/**
 * <p>
 * 
 * </p>
 *
 * @author wang
 * @since 2020-09-23
 */
@Data
@EqualsAndHashCode(callSuper = false)
public class UserOrder extends Model<UserOrder> {

    private static final long serialVersionUID=1L;

    @TableId(value = "id", type = IdType.AUTO)
    private Integer id;

    private String orderCode;

    /**
     * 顾客昵称
     */
    private String nickname;

    /**
     * 手机号
     */
    private String phone;

    private Integer cityId;

    private Integer schoolId;

    /**
     * 宿舍楼id
     */
    private Integer bedroomId;

    private String bedroomNum;

    private Integer distributionTime;

    /**
     * 配送状态：1）配送完成,0)配送中
     */
    private Integer distributionState;

    /**
     * 配送方式：1）立即配送，2）其他
     */
    private Integer distribution;

    /**
     * 地址
     */
    private String address;

    /**
     * 留言
     */
    private String remark;

    private BigDecimal payMoney;

    /**
     * 支付方式：1）微信支付，2）货到付款
     */
    private Integer payType;

    /**
     * 支付状态：0）未支付，1）支付成功，2）已取消，3）已完成
     */
    private Integer payState;

    private Integer payTime;

    /**
     * 优惠价格
     */
    private BigDecimal couponPrice;

    /**
     * 创建时间
     */
    private Integer createTime;

    /**
     * 店铺ID
     */
    private Integer storeId;

    /**
     * 店铺类型：1）学生店铺，2）供应商商城
     */
    private Integer storeType;

    private Integer userId;

    /**
     * 状态：1)正常，0）删除，2）用户取消 ，3）商家取消
     */
    private Integer state;

    /**
     * 微信订单号
     */
    private String transactionId;

    /**
     * 是否计算过推广收益：0）未计算
     */
    private Boolean isStatPro;

    /**
     * 利润
     */
    private BigDecimal profit;

    /**
     * 净利润
     */
    private String retainedProfit;

    /**
     * 活动减去价格
     */
    private BigDecimal reducedPrice;

    /**
     * 参与的活动
     */
    private String activities;

    /**
     * 是否预约订单
     */
    private Integer subscribe;

    /**
     * 预约时间
     */
    private String subscribeTime;

    /**
     * 创建日期
     */
    private String createDate;

    /**
     * '1)已拣货，0）未拣货',
     */
    private Boolean picking;

    /**
     * '1)收单，0）默认',
     */
    private Boolean isFirst;

    private Integer updateTime;

    /**
     * 配送费用
     */
    private BigDecimal shipFee;


    @Override
    protected Serializable pkVal() {
        return this.id;
    }

}
